<?php


class Solution {

    /**
     * @param Integer[] $nums
     * @return Boolean
     */
    function containsDuplicate($nums) {
        if(count($nums)<=1){
            return false;
        }
        $this->quickSortRefer($nums,0,count($nums)-1);
        for ($i=0;$i<count($nums)-1;$i++){
            if($nums[$i]==$nums[$i+1]){
//                echo 'T';
                return true;
            }
        }
//        echo "F";
        return false;
    }

/*    function selectSort(&$arr){
        $temp=0;
        for($i=0;$i<count($arr)-1;$i++){
            //假设$arr[$i]就是最小的数；
            $minVal=$arr[$i];
            //记录认为的最小数的小标
            $minIndex=$i;
            for($j=$i+1;$j<count($arr);$j++){
                //说明我们认为的最小值不是最小值
                if($minVal>$arr[$j]){
                    $minVal=$arr[$j];
                    $minIndex=$j;
                }
            }
            //最后交换
            $temp=$arr[$i];
            $arr[$i]=$arr[$minIndex];
            $arr[$minIndex]=$temp;
        }
    }*/
    //选择排序会超时

    public function quickSortRefer(&$data,$start,$end)
    {
        $i = $start;
        $j = $end;
        if($i >= $j)
            return $data;
        else
            $key = $data[$i];
        while($i<$j)
        {
            while($i<$j && $data[$j] >= $key)
                $j--;
            $data[$i] = $data[$j];
            $data[$j] = $key;//无用功的一行代码 数值交换 可以注释掉
            while($i<$j && $data[$i] <= $key)
                $i++;
            $data[$j] = $data[$i];
            $data[$i] = $key;
        }
        $this->quickSortRefer($data,0,$i-1);
        $this->quickSortRefer($data,$i+1,$end);

        return $data;

    }
}


$myarr=array(1,4,2,5,7,0,9);
$t=new Solution;
if($t->containsDuplicate($myarr)){
    echo " ";
}else{
    echo " ";
}

/*$t->selectSort($myarr);
print_r($myarr);*/



?>